home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / PLUS4 / plus4disk2.d64 / ch5.01 input < prev    next >
Text File  |  2009-01-03  |  9KB  |  93 lines

  1. Ç*NB"1:CH5.01  INPUT"
  2. Ç*SP0:LM8:RM62:PL66:PG59
  3. Ç*VP3:HL8:HR72:HD0:├16/+4: ╔╬╨╒╘                       ,,╙ECTION XX
  4. Ç*HS2:------------------------------------,,----------
  5. Ç*FT0:-----------------------,,----------
  6. Ç*FS3:(C) 1984 ┼LIZABETH ─EAL,,         Ç#
  7. ╙ECTION
  8. Ç*LN2:CN1;╘╚┼ ╔╬╨╒╘ ╨╥╧╩┼├╘Ç*LN2:CN0
  9.  
  10.      ╘HE WHOLE IDEA OF ╓╔┼╫ING MACHINE IN ACTION COMES FROM ┬RAD ╘EMPLETON WHO LONG AGO DESIGNED SUCH A PROGRAM FOR THE ╨┼╘ COMPUTER. ╔T PERMITTED HIM TO INVESTIGATE EVERY LOCATION IN THE MACHINE WHEN THERE WAS NO DOCUMENTATION FROM ├OMMODORE. ┬RAD THEN, BASED ON HIS KNOWLEDGE, DESIGNED SUPPLEMENTAL PROGRAMS TO ENHANCE ╨┼╘ AND THE ├OMMODORE 64. ╨╧╫┼╥ AND ╨┴╠ ARE EXAMPLES OF HIS WORK YOU MAY HEAR ABOUT.
  11.  
  12.      ┘OU ALREADY KNOW THAT A COMPUTER DOES NOTHING TO WHATEVER YOU TYPED UNTIL AN UNSHIFTED ╥┼╘╒╥╬ KEY IS PUSHED. ╔T'S HEARING US, BUT IT IT TAKES NO ACTION. ╚OW DO YOU KNOW THE COMPUTER HEARS US AT ALL? ╠ET'S ANSWER WITH A QUESTION: HOW DO ┘╧╒ THINK THE CONNECTION BETWEEN THE KEYS YOU PRESS AND WHAT COMES OUT ON THE SCREEN WORKS?
  13.      
  14.      ╬OW, WE ALSO KNOW THAT WHEN SHIFTED ╥┼╘╒╥╬ IS PUSHED, THE COMPUTER DOES NOTHING. ╘HIS IS HANDY. ┘OU CAN TYPE ALL SORTS OF SILLY WORDS OR GRAPHICS AND STILL BE ABLE TO ADVANCE TO THE NEXT LINE WITHOUT PROBLEMS. ╔T'S A "DON'T DO IT KEY" TO QUOTE ╩IM ┬UTTERFIELD.
  15.      
  16.      ╫HATEVER WE TYPE ON THE KEYBOARD IS AN "INPUT" TO THE COMPUTER. ╘HE INPUT IS PROCESSED WHEN WE PRESS ╥┼╘╒╥╬. ╘HIS KIND OF INPUT IS TO THE COMPUTER'S OPERATING SYSTEM. ╔T HAPPENS AUTOMATICALLY (OR SO IT SEEMS). ┘OU DON'T THINK ABOUT IT NORMALLY. ╘HE OTHER KIND OF INPUT IS THE ╔╬╨╒╘-INPUT, TYPING AN ANSWER TO A FAMILIAR ╔╬╨╒╘ COMMAND IN A ┬┴╙╔├ PROGRAM.
  17.      
  18.      ┬OTH CAN BE LOOKED AT IN GREAT DETAIL USING A LITTLE TRICK. ╫ITH THE HELP OF A MACHINE CODE ROUTINE WE INTERCEPT EVERYTHING THE COMPUTER IS DOING IN ORDER TO DUMP ON THE SCREEN THE CONTENTS OF THOSE MEMORY LOCATIONS WHICH REFLECT WHAT WE TYPE ON THE KEYBOARD.
  19.  
  20.      ╘YPE THIS CODE AS ACCURATELY AS YOU POSSIBLY CAN. ╘HE REASON IS THAT, UNLIKE ┬┴╙╔├, MACHINE CODE DOESN'T LIKE ERRORS. ╔T CAN LOCK UP (CRASH) IF WE DO THINGS WRONG.
  21.      
  22. // PRG: VIEW INPUT --- LINES 100-290 //
  23.  
  24.      ╔T'S A GOOD IDEA TO ╙┴╓┼ SUCH A PROGRAM BEFORE YOU RUN IT. ╔N THE EVENT OF CRASH YOU WILL NOT HAVE TO TYPE IT ALL OVER AGAIN. ┘OU CAN USE ANY NAME TO SAVE, "╓╔┼╫ ╔╬╨╒╘" IS AS GOOD AS ANY. ╔F YOU USE TAPE, FOLLOW THE FILENAME BY COMMA, 1; IF DISK, TYPE COMMA, 8.
  25.      
  26.      ╬OW RUN IT. ╔F YOU MISTYPED ANY LETTERS AND/OR NUMBERS IN THE ─┴╘┴ LINE THE COMPUTER WILL TELL YOU ABOUT IT. ╔F ALL IS WELL IT WILL ANNOUNCE AN ╧╬ AND ╧╞╞ VIEW COMMAND.
  27.      
  28.      ╘YPE ╙┘╙ FOLLOWED BY WHATEVER NUMBER THE ╧╬ COMMAND IS SHOWING. ╨USH ╥┼╘╒╥╬. ┘OU SHOULD SEE A STRANGE-LOOKING AND INDESTRUCTIBLE, DISPLAY APPEAR ON TOP OF THE SCREEN. ╘HAT'S THE INPUT MIRROR. ╘HIS DISPLAY WILL NOT GO AWAY UNTIL YOU ISSUE THE ╧╞╞ COMMAND USING THE SECOND ╙┘╙ ADDRESS. ╔T'S A GOOD IDEA TO WRITE DOWN BOTH NUMBERS SO THAT YOU CAN RECALL THEM AFTER YOU CLEAR THE SCREEN.
  29.      
  30.      ╬OW, THROW THE COMPUTER INTO TEXT MODE (USE THE LOGO AND SHIFT KEYS) TO SEE AS MANY LETTERS AS WE CAN INSTEAD OF GRAPHICS SINCE MUCH OF THE PICTURE LOOKS LIKE GIBBERISH ANYWAY:
  31.      
  32. // PIC: VIEW1 //
  33.  
  34.      ╚ERE COMES THE FUN PART: TYPE ANYTHING YOU WANT. ╔S ANYTHING HAPPENING UP TOP? ╬OPE. ╨USH ╥┼╘╒╥╬. ╫HAT HAPPENED? ├AN YOU RECOGNIZE ANYTHING YOU TYPED? ╘RY IT ON ALL SORTS OF ┬┴╙╔├ COMMANDS: ASK THE COMPUTER TO PRINT YOUR NAME, OR CALCULATE A LONG ARITHMETIC FORMULA, OR WHATEVER YOU WISH ... AND WHILE YOU DO IT, WATCH THE DISPLAY.
  35.      
  36.      ╚AVE YOU NOTICED THAT NOTHING CHANGES THERE UNTIL YOU PUSH ╥┼╘╒╥╬? ╚AVE YOU NOTICED THAT THERE IS AN AMPERSAND (THE SAME LETTER AS THE ONE TO THE RIGHT OF THE ╨ KEY) AT THE END OF THE IMAGE OF WHATEVER YOU TYPED? ╚AVE YOU NOTICED THAT YOU DO NOT SEE ┬┴╙╔├ KEYWORDS, SUCH AS ╨╥╔╬╘, BUT RATHER, THERE IS A REVERSE-LETTER IN ITS PLACE? ╚AVE YOU NOTICED THAT SOME THINGS YOU TYPED ARE SHORTER UP TOP THAN ON THE LINE THAT YOU TYPED? ╘HAT'S DUE TO A PROCESS CALLED "TOKENIZING" - YOU MAY READ ABOUT IT IN THE MANUAL THAT CAME WITH THE COMPUTER.
  37.  
  38.      ╫HAT DO YOU THINK WILL HAPPEN WHEN YOU TYPE IN PROGRAM LINES? ╘RY THIS:
  39.  
  40. // PRG: LEARN INPUT //
  41.  
  42. AND WATCH THAT TOP LINE WHILE YOU PUSH ╥┼╘╒╥╬, AS WONDERFUL THINGS ARE HAPPENING THERE! ╫ATCH THE AMPERSAND (SCREEN CODE - ZERO), IT'S A DELIMITER THAT THE COMPUTER STUFFS INTO THE INPUT BUFFER WHEN IT RECOGNIZES THE END OF WHAT YOU TYPED.
  43.  
  44.      ╙O MUCH FOR DIRECT MODE. ╠ET'S NOW WATCH INPUT IN PROGRAM MODE. ╥╒╬ THE LITTLE PROGRAM YOU HAVE JUST TYPED IN. ╔T WILL ASK YOU TO INPUT SOMETHING. ─O SO AND WHEN YOU PUSH ╥┼╘╒╥╬ WATCH THE DISPLAY AGAIN. ╟OOD SHOW?
  45.      
  46.      ╘HIS GIVES YOU A CHANCE TO LEARN EVERYTHING ABOUT THE ╔╬╨╒╘ COMMAND WHICH IS VERY POWERFUL AND FULL OF SURPRISES. ╔N RESPONSE TO THE PROMPTING QUESTION MARK TYPE THINGS LIKE
  47.      
  48.      Ç*FP8
  49.      ╩╧╚╬ ─╧┼
  50.      ╩╧╚╬ ─╧┼, ═.─.
  51.      1:2:3:4:5:6
  52.      ═┴╠╓┼╥╬  ╨┴
  53.      ═┴╠╓┼╥╬, ╨┴
  54.      "╩╧╚╬ ─╧┼, ═.─.    (CLOSING QUOTE NOT NEEDED)
  55.      "═┴╠╓┼╥╬, ╨┴
  56.      "1:2:3:4:5:6
  57.      
  58.      ╫HEN THE COMPUTER PRINTS OUT WHAT IT HEARD, PARTS OF WHAT YOU TYPED ARE MISSING, AREN'T THEY? ╬ASTY TRICK. ╘HE COMPUTER HEARD US, THE STUFF IS CLEARLY VISIBLE ON TOP OF THE SCREEN, AND WE ALL KNOW BY NOW THAT IT IS A TRUE IMAGE OF THE INPUT BUFFER. ╙O WHAT'S GOING ON?
  59.      
  60.      ┬┴╙╔├'S FAULT OR STRENGTH, DEPENDING ON YOUR POINT OF VIEW. ╔F YOU RECALL SEVERAL OF THE PROGRAMS IN THIS BOOK THAT USED ─┴╘┴ LINES, YOU MAY HAVE NOTICED THAT ─┴╘┴ ITEMS ARE SEPARATED BY COMMAS. ┴ COLON ALSO HAS A SPECIFIC MEANING. ╙O WHAT'S HAPPENING IS THAT WHILE THE COMPUTER'S OPERATING SYSTEM METICULOUSLY TAKES IN EVERY LETTER, THE ┬┴╙╔├ INTERPRETER TAKES THE DATA ONLY UP TO THE SEPARATOR SUCH AS A COMMA OR A COLON.
  61.      
  62.      ┴LL WELL AND GOOD, BUT HOW CAN WE HANDLE THE DOCTOR ON OUR MAILING LIST? ╘WO CHOICES SHOULD BY NOW BE OBVIOUS:
  63.      
  64. Ç*FP2
  65.      1. ╙KIP THE NASTY CHARACTERS, TYPE ╩╧╚╬ ─╧┼ ═.─. INSTEAD, OR
  66.      2. ╤UOTE IT.
  67.      
  68.      ╞URTHER, YOU MAY WISH TO INVESTIGATE WHAT HAPPENS WHEN YOU INPUT NOTHING, WHEN YOU SIMPLY STRIKE ╥┼╘╒╥╬ KEY. ╫HAT DOES THE BUFFER SAY? ╫HAT DOES ┬┴╙╔├ PRINT? ├AN YOU LEARN ANYTHING FROM IT? ├AN YOU SEE WHY A PHONEY STAR WE HAVE USED IN PREVIOUS PROGRAMS IS A USEFUL THING?
  69.      
  70.      ├AN YOU TURN THE ISSUE AROUND AND USE THE NULL, OR NOTHING, INPUT TO ADVANTAGE WHEN YOU NEED IT? ╘HINK ABOUT IT, IT CAN BE QUITE USEFUL, THOUGH IN A LIMITED NUMBER OF APPLICATIONS. ├AN YOU THINK ABOUT WHAT HAPPENS TO ALL THAT INFORMATION IN THE BUFFER WHEN YOU SAY ╔╬╨╒╘ ╪ IN YOUR ┬┴╙╔├ PROGRAM? 
  71.  
  72.      ═ANY PEOPLE WHO START PROGRAMMING GET DISCOURAGED WHEN THEY KNOW THEY CODED THINGS CORRECTLY, YET THE COMPUTER REFUSES TO PRINT OUT ALL THE DATA THEY ENTERED. ┴ND THEY GIVE UP. ┘OU HAVE NO REASON TO EVER GIVE UP, SINCE YOU HAVE NOW SEEN THE FUNCTIONING OF THE ╔╬╨╒╘ STATEMENT IN ALL ITS DETAILS.
  73.  
  74. ***  ╨╥╧╩┼├╘  ***
  75.  
  76.      ╔F YOU CHANGE THE PROGRAM JUST A LITTLE BIT, YOU CAN SEE MORE BYTES. ╨╧╦┼ ┴─+29,120  WILL DISPLAY 120 BYTES, ZERO WILL SHOW 256 BYTES.
  77.  
  78.      ┴ND TO LOOK AT OTHER INTERESTING AREAS IN THE COMPUTER'S MEMORY YOU CAN CHANGE THE BEGINNING PLACE; YOU CAN SET FOR A 256 BYTE DISPLAY AND THEN ╨╧╦┼Çú┴─+23,0 OR 255 FOR QUITE INTERESTING DISPLAYS.
  79.  
  80. ***  ╘╫╧ ├╧═╨╒╘┼╥ ╠┴╬╟╒┴╟┼╙  ***
  81.  
  82.      ┘OU HAVE JUST SEEN ANOTHER LANGUAGE IN THE COMPUTER. ╨ERHAPS YOU DIDN'T EVEN KNOW IT EXISTS. ┬UT IT'S THERE, IT IS RUNNING ALL YOUR PROGRAMS, IT FLASHES THE CURSOR AND DOES ALL SORTS OF WONDERFUL THINGS WITH AN INCREDIBLE SPEED. ╔T IS CALLED ═┴├╚╔╬┼ ╠┴╬╟╒┴╟┼. ┘OU COULDN'T HAVE SEEN THE INPUT BUFFER AT WORK WITHOUT THIS LITTLE HELP FROM MACHINE LANGUAGE. ┴ND THAT'S JUST FOR STARTERS.
  83.  
  84.      ╧NE DAY YOU MAY GET BITTEN BY THE ═┴├╚╔╬┼ ╠┴╬╟╒┴╟┼ BUG. ╔T CREEPS UP ON YOU, AND SUDDENLY YOU'RE THERE. ╫HEN YOU DO, YOU'LL FIND IT FAST, EXCITING, AND RATHER DEMANDING OF PLANNING TO THE TINIEST DETAIL. 
  85.  
  86.      ╘HERE ARE SEVERAL GOOD BOOKS ON THE MARKET  TO HELP YOU INVESTIGATE IT FURTHER. ┬Y FAR THE BEST TUTORIAL AND REFERENCE MATERIAL IS ╩IM ┬UTTERFIELD'S BOOK. ╥AETO ╫EST HAS A COMPREHENSIVE AND A SUBSTANTIAL AND COMPREHENSIVE SECTION ON MACHINE LANGUAGE IN HIS EXCELLENT BOOK; IGNORE THE FACT THAT THE BOOK TITLE REFERS TO THE ╨┼╘. ┴LL ├OMMODORE COMPUTERS TO DATE USE THE SAME MACHINE LANGUAGE.
  87.  
  88. ***  ═┴├╚╔╬┼ ├╧─┼  ***
  89.  
  90.      ╘HIS IS A DISASSEMBLY OF THE ─┴╘┴ LINES IN THE FIRST PROGRAM. ─ISASSEMBLY MEANS TRANSLATING PLAIN NUMBERS THE COMPUTER UNDERSTANDS TO A LITTLE LESS-PLAIN WORDS AND NUMBERS SOME PEOPLE CAN READ. ╔T IS INCLUDED HERE AS A REFERENCE FOR PEOPLE WHO WISH TO STUDY THE ╓╔┼╫ IDEA FURTHER. ╘HE ═╧╬╔╘╧╥ IN THE ├╧══╧─╧╥┼16/╨╠╒╙4 COMPUTERS PERMITS DISASSEMBLING AND TINY ASSEMBLY. ╫ITH THE EXCEPTION OF LINE NUMBERS, DASHES AND THE LOOP ARROWS, THE MONITOR DISPLAY OF THE CODE YOU HAVE TYPED IN EARLIER LOOKS JUST LIKE THIS:
  91.  
  92. // PRG: VIEW INPUT --- LINES 800-995 //
  93.